// part1:C14:14.16:my_StrVec.h
#ifndef MY_STRVEC_H__
#define MY_STRVEC_H__
class StrVec
{
public:
    StrVec();
    ~StrVec(){}
    friend bool operator==(const StrVec &lhs, const StrVec &rhs);
    friend bool operator!=(const StrVec &lhs, const StrVec &rhs);
};
bool operator==(const StrVec &lhs, const StrVec &rhs)
{
    if (lhs.size() != rhs.size()) 
    {
       return false; 
    }

    for (auto itr1 = lhs.begin(), itr2 = rhs.begin(); itr1 != lhs.end()
            && itr2 != rhs.end(); ++itr1++, ++itr2++) 
    {
        if (*itr1 != *itr2) 
        {
            return false; 
        }    
    }    
    return true;
}
bool operator!=(const StrVec &lhs, const StrVec &rhs)
{
    return !(lhs == rhs);
}
#endif
